home *** CD-ROM | disk | FTP | other *** search
- #ifndef MAKE_ID
- #define MAKE_ID(a,b,c,d) ((ULONG) (a)<<24 | (ULONG) (b)<<16 | (ULONG) (c)<<8 | (ULONG) (d))
- #endif
-
- #ifdef _DCC
- #define __inline
- #endif
-
- #include "aman.h"
- #include "amanExtern.h"
-
- #include "version.h"
-
- struct ObjApp * CreateApp(void)
- {
- struct ObjApp * Object;
-
- APTR MN_Project, MN_Project_About, MN_Project_Quit, GR_aman, GR_pattern;
- APTR LA_pattern, GR_listview;
- static const struct Hook lv_confuncHook = { { NULL,NULL },(VOID *)lv_confunc,NULL,NULL };
- static const struct Hook lv_desfuncHook = { { NULL,NULL },(VOID *)lv_desfunc,NULL,NULL };
-
-
- if (!(Object = AllocVec(sizeof(struct ObjApp), MEMF_PUBLIC|MEMF_CLEAR)))
- return(NULL);
-
- LA_pattern = Label("Pattern");
-
- Object->STR_pattern = StringObject,
- MUIA_Frame, MUIV_Frame_String,
- MUIA_ControlChar, 's',
- MUIA_HelpNode, "STR_pattern",
- End;
-
- GR_pattern = GroupObject,
- MUIA_HelpNode, "GR_pattern",
- MUIA_Group_Horiz, TRUE,
- Child, LA_pattern,
- Child, Object->STR_pattern,
- End;
-
- Object->LV_aman = ListObject,
- MUIA_Frame, MUIV_Frame_InputList,
- MUIA_List_Active, MUIV_List_Active_Top,
- MUIA_List_ConstructHook, &lv_confuncHook,
- MUIA_List_DestructHook, &lv_desfuncHook,
- End;
-
- Object->LV_aman = ListviewObject,
- MUIA_HelpNode, "LV_aman",
- MUIA_Listview_DoubleClick, TRUE,
- MUIA_Listview_List, Object->LV_aman,
- End;
-
- GR_listview = GroupObject,
- MUIA_HelpNode, "GR_listview",
- MUIA_Frame, MUIV_Frame_Group,
- MUIA_FrameTitle, "Available Documents",
- Child, Object->LV_aman,
- End;
-
- GR_aman = GroupObject,
- Child, GR_pattern,
- Child, GR_listview,
- End;
-
- Object->WI_aman = WindowObject,
- MUIA_Window_Title, "AMan Doument Selection",
- MUIA_Window_ID, MAKE_ID('0', 'W', 'I', 'N'),
- WindowContents, GR_aman,
- End;
-
- MN_Project_About = MenuitemObject,
- MUIA_Menuitem_Title, "About",
- MUIA_Menuitem_Shortcut, "?",
- End;
-
- MN_Project_Quit = MenuitemObject,
- MUIA_Menuitem_Title, "Quit",
- MUIA_Menuitem_Shortcut, "Q",
- End;
-
- MN_Project = MenuitemObject,
- MUIA_Menuitem_Title, "Project",
- MUIA_Family_Child, MN_Project_About,
- MUIA_Family_Child, MN_Project_Quit,
- End;
-
- Object->MN_aman = MenustripObject,
- MUIA_Family_Child, MN_Project,
- End;
-
- Object->App = ApplicationObject,
- MUIA_Application_Author, "Tobias Ferber",
- MUIA_Application_Menustrip, Object->MN_aman,
- MUIA_Application_Base, "AMAN",
- MUIA_Application_Title, "AMan",
- MUIA_Application_Version, "$VER: AMan " VERSION " (23.10.94)",
- MUIA_Application_Copyright, "Tobias Ferber",
- MUIA_Application_Description, "Amiga Manual Browser",
- SubWindow, Object->WI_aman,
- End;
-
-
- if (!Object->App)
- {
- FreeVec(Object);
- return(NULL);
- }
-
- DoMethod(MN_Project_About,
- MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime,
- Object->App,
- 2,
- MUIM_Application_ReturnID, ID_ABOUT
- );
-
- DoMethod(MN_Project_Quit,
- MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime,
- Object->App,
- 2,
- MUIM_Application_ReturnID, MUIV_Application_ReturnID_Quit
- );
-
- DoMethod(Object->WI_aman,
- MUIM_Notify, MUIA_Window_CloseRequest, TRUE,
- Object->WI_aman,
- 3,
- MUIM_Set, MUIA_Window_Open, FALSE
- );
-
- DoMethod(Object->WI_aman,
- MUIM_Notify, MUIA_Window_CloseRequest, TRUE,
- Object->App,
- 2,
- MUIM_Application_ReturnID, MUIV_Application_ReturnID_Quit
- );
-
- DoMethod(Object->STR_pattern,
- MUIM_Notify, MUIA_String_Acknowledge, MUIV_EveryTime,
- Object->LV_aman,
- 1,
- MUIM_List_Clear);
-
- DoMethod(Object->STR_pattern,
- MUIM_Notify, MUIA_String_Acknowledge, MUIV_EveryTime,
- Object->WI_aman,
- 3,
- MUIM_Set, MUIA_Window_ActiveObject, Object->LV_aman
- );
-
- DoMethod(Object->STR_pattern,
- MUIM_Notify, MUIA_String_Acknowledge, MUIV_EveryTime,
- Object->App,
- 2,
- MUIM_Application_ReturnID, ID_SUBJECT
- );
-
- DoMethod(Object->LV_aman,
- MUIM_Notify, MUIA_Listview_DoubleClick, TRUE,
- Object->App,
- 2,
- MUIM_Application_ReturnID, ID_SELECT
- );
-
- DoMethod(Object->WI_aman,
- MUIM_Window_SetCycleChain, Object->STR_pattern,
- Object->LV_aman,
- 0
- );
-
- set(Object->WI_aman,
- MUIA_Window_Open, TRUE
- );
-
-
- return(Object);
- }
-
- void DisposeApp(struct ObjApp * Object)
- {
- MUI_DisposeObject(Object->App);
- FreeVec(Object);
- }
-